7 - wsort + Beispiel [ID:15680]
50 von 162 angezeigt

Nun noch ein paar Hinweise dazu, was ihr an der nächsten Aufgabe der WSORT machen sollt.

In der WSORT sollt ihr ein kleines Programm schreiben, das von der Standard-Eingabe zeilenweise

einliest und sobald alle Zeilen eingelesen wurden, diese alphabetisch sortiert und in

sortierter Reihenfolge wieder ausgibt.

Die Lernziele sind also, dass ihr mit der Ein- und Ausgabe zurechtkommt, d.h. dass

ihr von stdin lest und nach stdout schreibt und dass ihr die Realloc-Funktionen nutzt.

Die Realloc-Funktion ist an dieser Stelle notwendig, weil ihr nicht wisst, wie groß

eure Eingabe am Ende sein wird.

Und ihr könnt an dieser Stelle auch keine verkettete Liste nutzen, weil ihr zum Sortieren

die QSort-Funktion verwendet, die nur ein Array, aber keine Liste unterstützt.

Darüber hinaus sollt ihr noch mit dem vorgestellten Wall-Craft-Programm zurechtkommen und überprüfen,

dass euer Programm keinerlei Speicherfehler hat.

Damit ihr eure Abgaben testen könnt, legen wir euch Eingabedaten bereit, die ihr euch

mittels des Copypublic-Files vor Skriptos kopieren könnt.

Die Dateien liegen im Verzeichnis Poi i4sp1.pub.aufgabe2.

Dabei könnt ihr die Ausgabe eures Programms mit der Ausgabe eines von uns bereitgestellten

WSort-Programms überprüfen.

So könnt ihr feststellen, ob euer Programm für die gleiche Eingabe die selber Ausgabe

tätigt, wie das vom Lehrstuhl bereitgestellte.

An dieser Stelle noch der kurze Hinweis, wie ihr eure Abgaben testen könnt.

Wenn ihr euer ausführbares Programm die WSort habt, dann ist der Aufruf der WSorte recht

einfach.

Ihr tippt einfach WSort und könnt jetzt hat solange Zeilen eingeben, bis ihr irgendwann

EOF sendet, indem ihr Ctrl-D drückt.

Ab diesem Moment wird die Eingabe sortiert und wieder ausgegeben.

Nachdem es nun ziemlich lästig ist, die Eingabe per Hand zu tätigen, haben wir euch im PUB-Verzeichnis

bereits Wörterlisten zur Verfügung gestellt.

Diese heißen zum Beispiel WList0 bis WList6.

Diese Wörterlisten sind relativ lang.

Die erste hat zum Beispiel 380 Zeilen.

Das ist mehr, als man fürs Testen eintippen möchte.

Deshalb könnt ihr das natürlich auch alles automatisiert machen, indem ihr die jeweilige

Eingabedatei über die Shell als Eingabe weiterleitet.

Ihr könnt also euer Programm WSort ausführen und mit dem kleiner Zeichen den Inhalt einer

Datei in die Standardeingabe weiterleiten.

Zum Beispiel jetzt die Datei WList0.

Ab dem Moment liest das Programm WSort von der Standardeingabe aus der Datei WList0.

Und sobald das Ende der Datei erreicht wurde, wird die Eingabe sortiert und ausgegeben.

Das alles kann ich nun in eine weitere Datei speichern, indem ich mit dem größeren Zeichen

einfach die Ausgabe umleite.

Zum Beispiel in eine Datei WList.mine, indem ich nun meine Ausgabe speicher.

Wir haben euch auch ein bereits fertig kombiniertes WSort Programm zur Verfügung gestellt,

das ihr zum Vergleichen nutzen könnt.

Das liegt ebenfalls im Pupverzeichnis und wenn ihr dieses ausführt, könnt ihr auf dieselbe

Art und Weise zum Beispiel eine Datei Willis.spteam erstellen.

Jetzt habt ihr zwei Dateien.

Die eine wurde von eurem Programm erstellt, die andere ist mit dem Programm von uns.

Was ihr nun machen könnt ist, vergleichen ob die Ausgaben der beiden Programme gleich

ist.

Dies könnt ihr ganz einfach machen, indem ihr Programme zum Vergleichen wie zum Beispiel

Teil einer Videoserie :
Teil eines Kapitels:
Sortieren und Fehlerbehandlung

Zugänglich über

Offener Zugang

Dauer

00:15:31 Min

Aufnahmedatum

2020-05-13

Hochgeladen am

2020-05-13 22:16:15

Sprache

de-DE

Einbetten
Wordpress FAU Plugin
iFrame
Teilen